iT邦幫忙

2022 iThome 鐵人賽

1
自我挑戰組

C++30日挑戰之旅系列 第 32

【WIDE LAB紀錄 Day2】恢復活蹦亂跳的Flutter Doctor ft.很多很多的路徑設置

  • 分享至 

  • xImage
  •  

壹、Fluttor Doctor不願醫治!?

零、問題

關閉終端機後無法再行flutter doctor與查無指令
https://ithelp.ithome.com.tw/upload/images/20230131/20151593WzjSqxB9Ty.png

一、猜測(1):不同的shell導致?

經檢查(左上角蘋果->系統偏好設定->使用者與群組->按下鎖頭與輸入密碼->對使用者按右鍵->進階選項)後shell並沒有被更動為zch做為預設,還是bash
https://ithelp.ithome.com.tw/upload/images/20230131/201515930j4w9ybgR7.png

目前電腦中的shells:
https://ithelp.ithome.com.tw/upload/images/20230131/20151593iw5T5qHQNA.png

由指令chsh -s /bin/zsh(最後一字為欲切換的shell)與輸入"sudo flutter doctor"來檢查是否為安裝shells不同的問題
https://ithelp.ithome.com.tw/upload/images/20230131/20151593kQi0mqio2X.png

猜測(1)結論:由結果推得,應該與本項目沒有絕對關係

二、猜測(2):路徑導致?

1、檢查目前所有的PATH與環境參數

由指令env 檢查目前所有的路徑
https://ithelp.ithome.com.tw/upload/images/20230131/20151593YEJiylCnPt.png
其中可以看到最後一行,推估可能是Path需要再行調整

OLDPWD=/Users/csie/development/flutter

由指令export 檢查目前所有的環境變數
https://ithelp.ithome.com.tw/upload/images/20230131/20151593tRGntecK4h.png
中間也可以看到與上述相同的部分加以對照

declare -x OLDPWD="/Users/csie/development/flutter"

而declare -x的功能如下所示
https://ithelp.ithome.com.tw/upload/images/20230131/20151593EICxJws76D.png

圖片引用自鳥哥私房菜-declare / typeset,連結參見資料搜尋區

小插曲:pwd指令可以輸出目前位置目錄,太重要了,須給他一個圖片
https://ithelp.ithome.com.tw/upload/images/20230131/20151593QZe7tdm7Um.png

2、比對問題與推測

而經由再次使用指令(YOUR_FLUTTER_PATH目前自己定義為/Users/csie/developments

 # flutter
 export PATH="$PATH:YOUR_FLUTTER_PATH/flutter/bin"

猜測問題應在如圖中橘筆所示的部分
https://ithelp.ithome.com.tw/upload/images/20230131/20151593kinDOkjv0r.jpg

且藉由關掉虛擬機後的PATH比較,可以發現用export添加的路徑並不是永久的,所以昨天關掉終端機後flutter doctor開不了的問題基本上就是路徑這點沒錯!
https://ithelp.ithome.com.tw/upload/images/20230131/2015159366QDDAfPGM.jpg

三、系統路徑與環境變數設定檔

首先以下述指令開啟系統路徑檔(.bash_profile

touch ~/.bash_profile; open ~/.bash_profile

開啟.bash_profile查看(初始的樣子)
https://ithelp.ithome.com.tw/upload/images/20230131/20151593WDSiOmc0SU.png

關閉檔案並於終端機呼叫echo $PATH檢查目前PATH
https://ithelp.ithome.com.tw/upload/images/20230131/20151593jo7zKzhWIZ.png

vim ~/.bash_profile開啟設定檔,下圖為其初始狀態
https://ithelp.ithome.com.tw/upload/images/20230131/20151593QXr1bjOQFz.png

按下i進入insert模式,先於最後一行添加export PATH="$PATH:Users/csie/developments/flutter/bin",並按esc:wq,保存並離開vim模式
https://ithelp.ithome.com.tw/upload/images/20230131/20151593vgOpfQVRkL.png

測試:經測試依序在下列A~D四處添加路,保存並退出後都沒有成功印出欲加的路徑
https://ithelp.ithome.com.tw/upload/images/20230131/20151593YgnvrlDyDu.jpg

印出路徑結果都相同QAQ
https://ithelp.ithome.com.tw/upload/images/20230131/20151593ODUjqjZR4x.png

結果發現是自己忘記在關閉vim後在終端機輸入source ~/.bash_profile重啟設定檔所致,後來在原本黃筆"A"的地方放入路徑後便成功輸出了 o(. ≧▽≦)ツ┏━┓!,並且重開以後echo $PATH的路徑也還在!
https://ithelp.ithome.com.tw/upload/images/20230131/20151593ERRbqiDlzU.png
注意:development沒有s,後來有改了OAO

回去看了flutter文件後,這句話當頭棒喝,他必須有紅筆強力標注,恩,他是當前路徑。
https://ithelp.ithome.com.tw/upload/images/20230131/201515937NfUJp8ENO.png

真的是Coding版「眾裡尋他千百度,驀然回首,那人卻在,燈火闌珊處。」

猜測(2、3)結論:雖然成功添加路徑於bash設定檔,但flutter doctor拒絕上線的問題還未解決

四、重新檢視flutter SDK

目前flutter資料夾內的ls -l詳細資訊與pwd路徑(作為檢查)
https://ithelp.ithome.com.tw/upload/images/20230131/201515933eMurXGa8d.png

且用瀏覽器開啟檔案也確定資料夾內確定是有內容的
https://ithelp.ithome.com.tw/upload/images/20230131/201515934ZAcHYQl2y.png

結果靈光一閃,啊,我剛剛在設定檔改完"developments ->development"以後,忘記再source ~/.bash_profile了Laaaaaaaaa(敲頭)

五、乖巧可愛的Flutter Doctor回來了,我好想你

敲完頭後再次輸入flutter Doctor就正常了(跟昨天一樣活蹦亂跳的樣子,請好好保持你的活力,拜託了)
https://ithelp.ithome.com.tw/upload/images/20230131/20151593GRZGCp8PLh.png

六、路徑/虛擬機,以及搶救醫生過程中的各種資料搜尋:

貳、Xcode與小手機

在flutter doctor奄奄一息的過程裡,好消息是Xcode成功開啟了,而他的Simulator要由右鍵點選icon的方式開啟(還在摸索中),按下後開啟了一個IPhone12ProMax的模擬器

https://ithelp.ithome.com.tw/upload/images/20230131/20151593iLSOVynHBa.pnghttps://ithelp.ithome.com.tw/upload/images/20230131/20151593jOsfcrOxwo.png

開完機的i12

  • 小說明:上方三個圖標分別代表按鍵功能:主畫面、螢幕截圖、旋轉螢幕
  • 滑鼠游標則代表手指滑動方向與點選功能
    https://ithelp.ithome.com.tw/upload/images/20230131/20151593OWhhFMNNPA.png

但中途跳出“Mobilecal quit unexpectedly”的問題,並且在Simulator開機時,電腦反應會變得遲鈍,應是吃資源的關係(跟先前使用電腦開Android Stuio 的經驗相符,開完機後就會回復正常)
https://ithelp.ithome.com.tw/upload/images/20230131/20151593vymMnFRuCd.png

小結:這部分就是明天的支線任務了,主任務是終於可以去好好看看flutter doctor的醫囑了

參、其他:

一、Mac之路₍ ฅᐢ. .ᐢฅ ₎給自己的小補帖

  • 滑鼠滾動的方向跟一般不同
  • 選字選完後要自己按右方向鍵才會往下個
  • 複製貼上都要按win鍵(因為用外接鍵盤+滑鼠,不是本廠的),不是ctrl
  • 更改語言要案Caps Lock,不是shift切換
  • 全半形文字會有差!標點符號跟文字都是!
  • 標點符號還是Ctrl
  • 螢幕剪圖是Alt+Shift+4,按完會直接存在桌面,可以直接移到ithome文章裡,👍👍,不用再drop到平板自己放了,耶咿!
  • 同時案Caps Lock+Shift是切換固定英文大寫/小寫的模式(即windows原始的Caps Lock功能)
  • 按到Insert會變成打字吃字模式,按一下可以調回來(跟windows一樣)

二、連結之海(又名:喂狗的過程)裡撈到的酷東西


上一篇
【WIDE LAB紀錄 Day1】IOS環境安裝-Xcode與flutter
下一篇
【WIDE LAB紀錄 Day3】Flutter Doctor 大展身手
系列文
C++30日挑戰之旅43
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言